This invention relates to modulated carrier systems, for example so-called coded type systems in which digital symbols to be sent over a band-limited channel are encoded as a sequence of discrete signal points selected from an available signal point alphabet, with dependencies being introduced between successive signal points in the sequence to increase immunity to noise and distortion.
In typical such coded systems, for example the systems described in Csajka et al., U.S. Pat. No. 4,077,021, and Ungerboeck, "Channel Coding with Multilevel/Phase Signals", IEEE Transactions on Information Theory, Vol. IT-28, No. 1, January, 1982, information about the dependencies between successive signal elements is exploited at the receiver using a decoding technique based on the Viterbi algorithm described in Forney, "The Viterbi Algorithm", Proceedings of the IEEE, 61(3): 268 (March 1973), incorporated herein by reference. In such a technique, instead of decoding each received signal independently into the signal point closest to the received signal in the sense of Euclidean distance a sequence of received signals is decoded into the sequence of signal points closest to the sequence of received signals in the sense of the algebraic sum of squared Euclidean distances. In such coded systems, final decisions are delayed for a sufficient number of signaling intervals to assure to an acceptably high probability that the sequence of which signal points were sent will be correctly decided. By contrast to coded systems, in conventional uncoded systems each symbol is encoded into a signal point based only on the symbol to be encoded, with no dependencies between successive signal points; at the receiver, decoding proceeds one symbol at a time.
Receivers for data transmission systems typically include an equalizer to reduce the effects of intersymbol interference introduced by the channel, as described in Qureshi, "Adaptive Equalization", IEEE Communications Magazine, March, 1982, incorporated herein by reference. A so-called linear equalizer for a quadrature amplitude modulation (QAM) system, for example, is typically a transversal filter which takes samples of a received signal, multiplies each sample by a complex coefficient, and adds the products to obtain an equalized received signal for use in decoding. For channels with severe amplitude distortion, such a linear transversal equalizer enhances noise and correlates the noise in successive intervals. In coded systems using the conventional Viterbi algorithm decoder, such noise correlation will increase the probability of making decision errors.
In conventional uncoded systems, a decision feedback type equalizer (DFE) can be substituted for the linear equalizer to perform equalization with less noise enhancement. DFEs also have the property of producing uncorrelated noise samples. DFEs are described in the Qureshi article cited above, in C. A. Belfiore and J. H. Park, Jr., "Decision Feedback Equalization", Proceedings of the IEEE, August, 1979, and in D. D. Falconer, "Application of Passband Decision Feedback Equalization in Two-Dimensional Data Communication Systems", IEEE Transactions on Communications, October, 1976, incorporated herein by reference. Generally, a DFE multiplies previous decisions by feedback coefficients and sums the products to produce a value to be applied to the demodulated, partly equalized, undecoded received signal to correct for the anticipated channel intersymbol interference (due to previous signal points) in the currently received signal.
Receivers for conventional uncoded systems sometimes use modified DFEs (which may be called noise predictors) to predict and compensate for the noise component in the received signal, as described in the Belfiore and Park article. The noise predictor output is a weighted sum of past error signals (each based on a comparison of a past received signal with the corresponding decision), where the weighting coefficients are selected to minimize the average power of the residual noise signals after prediction by removing the correlation which exists between successive error signals before prediction. Unlike the conventional DFEs, in noise predictors the coefficients of the linear (or forward) equalizer are independent of the noise predictor (or feedback) coefficients. The forward equalizer coefficients can be updated to minimize the mean square error before prediction as in a conventional linear equalizer. Typically the number of feedback coefficients is small. For example, in high-speed voice-band modems a single coefficient can be sufficient even for worst case channels and high baud rates of the order of 2800 Baud. FIG. 1 illustrates a noise predictor having only a single predictor coefficient.
Other decision feedback techniques have been used to correct for other kinds of channel-imposed distortion. For example, adaptive phase predictors correct for phase jitter using the history of actual phase errors reflected in the most recent decisions as an indication of phase distortion.
In using decision feedback techniques with conventional uncoded systems, decisions of which signal points were sent are available without delay. In coded systems, using DFE generally requires tentative decisions with no delay. Tentative decisions could be obtained from the most likely path history of the Viterbi algorithm, but such tentative decisions would not be reliable enough for feedback.
Use of the Viterbi algorithm as an optimum method of detecting a sequence of transmitted signals received over a noisy channel with intersymbol interference (ISI) in a conventional uncoded system is described in Forney, "Maximum-Likelihood Sequence Estimation of Digital Sequences in the Presence of Intersymbol Interference," IEEE Transactions on Information Theory, vol. IT-18, No. 3, May 1972. This application of the Viterbi algorithm is similar to detecting a sequence of signals transmitted by coded modulation in that in both cases dependencies between successive signal elements are introduced by a finite-state process. In coded modulation systems, the finite-state process is the encoder in the transmitter. In conventional uncoded systems with ISI, the ISI model of the channel (including transmit and receive filters) represents the finite-state process as explained in the Forney article. The state in the finite-state process is determined by the K most recent signal points, where K is the number of ISI terms in the channel model. Thus, assuming L bits are sent every signaling interval, the Viterbi algorithm will be based on (2.sup.L).sup.K possible states. In this application of the Viterbi algorithm, the branch metric computations will take into account the presence of ISI.
It is also possible to use the Viterbi algorithm as an optimum method for exploiting the noise correlation at the output of a linear equalizer. In terms of performance, this would be equivalent to the more conventional use described in the Forney article, provided the linear equalizer eliminates ISI. In this approach the Viterbi algorithm will again be based on (2.sup.L).sup.K states defined in the same manner, except branch metric computations are based on noise correlation rather than ISI.
In coded systems it is also possible to use the Viterbi algorithm for reducing the effects of channel distortion in an optimum manner, as described, for example, by A. Viterbi and J. Omura in "Principles of Digital Communication and Coding", McGraw Hill Book Company, 1979, incorporated herein by reference. In this approach the Viterbi algorithm will simultaneously provide decoding and channel equalization using a larger number of states than used in the encoder. Specifically, for each encoder state a new set of decoder states is defined in terms of K possible previous signal points such that with N encoder states a large number --N(2.sup.L).sup.K -- of decoder states is needed and a complicated implementation is required.
To summarize, in coded systems the combination of decision-feedback equalization and Viterbi detection is generally not directly available due to the decoding delay and to implementation complexity, respectively.
One scheme for using decision feedback with Viterbi algorithm decoding is disclosed in Qureshi, patent application U.S. Ser. No. 687,205, filed Dec. 28, 1984, assigned to the same assignee as this application, and incorporated herein by reference. In the Qureshi application, the receiver associates a separate decision-feedback noise predictor circuit with each possible state of the Viterbi decoder. The different predictor circuits use signal points in each state's path history for feedback to produce noise predictions as in a DFE. These noise predictions are used to offset the received signal to produce different modified versions. In extending the contending path histories from a current time interval to the next time interval, the Viterbi decoder uses these modified versions to compute branch metrics. Specifically, a branch metric for a transition from a given state is computed using the modified received signal based on noise prediction utilizing the signal points in that state's path history for decision-feedback.
More generally, in the Qureshi scheme the Viterbi decoder assumes the number of ISI terms in the channel model to be fewer than the actual number of ISI terms. In computing branch metrics the effect of longer ISI (or longer noise correlation) is compensated using decision-feedback independently for each state with decisions obtained from the path histories.
Some data transmission systems use so-called multi-dimensional encoding of digital symbols. A family of trellis coded multi-dimensional systems is disclosed in Wei, U.S. Ser. No. 727,398, filed on Apr. 25, 1985, assigned to the same assignee as this application, and incorporated herein by reference.
For example, a code for sending 7 bits per signaling interval could use a 32-state encoder which takes two intervals worth of bits (14 bits) at a time and maps them into two 2-dimensional (2D) signal constellations to obtain two 2D signal points transmitted in two successive signaling intervals. The received signals can be decoded with a Viterbi algorithm having 32-states where the path metrics and path histories are updated once every two signaling intervals based on 4D branch metrics. In multi-dimensional systems, the Viterbi algorithm can again be used to reduce the effects of channel distortion in an optimum manner. The Qureshi scheme, if applied to coded systems with a large number of states and/or with multi-dimensional encoding, would require a large number of branch metric computations and received signal modifications.
Unless indicated otherwise, in what follows we will use the term "signal points" to mean the transmitted symbols sent every signaling interval and the term "signal constellation" to mean the set of different possible signal points.